package com.ksd.modules.note.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ksd.common.po.BatchIdsPO;
import com.ksd.commons.IBaseService;
import com.ksd.modules.note.entity.AdminNoteComment;
import com.ksd.modules.note.po.AdminNoteCommentSavePO;
import com.ksd.modules.note.po.AdminNoteCommentSearchPO;
import com.ksd.modules.note.vo.AdminNoteCommentVo;

public interface IAdminNoteCommentService extends IBaseService<AdminNoteComment> {


    /**
     * 查询列表
     * @param adminNoteCommentSearchPO
     * @return
     */
    Page<AdminNoteCommentVo> findAdminNoteComments(AdminNoteCommentSearchPO adminNoteCommentSearchPO);

    /**
     * 保存和修改
     * @param adminNoteCommentSavePO
     * @return
     */
    AdminNoteCommentVo saveUpdateAdminNoteComment(AdminNoteCommentSavePO adminNoteCommentSavePO);

    /**
     * 根据id获取明细
     * @param id
     * @return
     */
    AdminNoteCommentVo getAdminNoteCommentById(Long id);

    /**
     * 单个物理删除
     * @return
     */
    Boolean removeAdminNoteCommentById(Long id);

    /**
     * 批量物理删除
     * @param batchIdsPO
     * @return
     */
    Boolean batchRemovesAdminNoteComment(BatchIdsPO batchIdsPO);

    /**
     * 修改状态
     * @param id
     * @param column
     * @param value
     * @return
     */
    boolean updateStatus(Long id,String column,Integer value);

    /**
     * 修改状态
     * @param id
     * @param column
     * @param value
     * @return
     */
    boolean updateStatusStr(Long id,String column,String value);

    /**
     * 批量上架
     *
     * @param batchIdsPO
     * @return
     */
    Boolean batchDowns(BatchIdsPO batchIdsPO);

    /**
     * 批量上架
     *
     * @param batchIdsPO
     * @return
     */
    Boolean batchUps(BatchIdsPO batchIdsPO);
}
